package com.nutricia.common.dal.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 用户角色
 *
 * @author: huangsheng
 * @date: 2017/10/25
 */
@Mapper
public interface UserRoleMapper {

    /**
     * 批量新增用户角色
     *
     * @author: huangsheng
     * @date: 2017/10/25 下午2:54
     */
    void batchInsertUserRole(@Param("roleIds") List<String> roleIds, @Param("userId") String userId);

    /**
     * 获取用户所拥有的角色id集合
     *
     * @param userId 用户id
     * @author: huangsheng
     * @date: 2017/10/25 下午3:47
     */
    List<String> queryRoleIdsByUserId(String userId);

    /**
     * 删除用户下的所有角色id
     *
     * @param userId 用户id
     */
    int deleteRoleByUserId(String userId);

    /**
     * 通过角色id集合获取拥有该角色的用户Id集合
     *
     * @param roleId 角色Id集合
     * @return
     */
    List<String> queryUserIdsByRoleIds(List<String> roleId);
}
